﻿using PmSadis.Models.Abstract;
using System;
using System.Collections.Generic;
using System.ComponentModel.DataAnnotations.Schema;
using System.Linq;
using System.Text;

namespace PmSadis.Models
{
    /// <summary>
    /// Возможные работы элемента
    /// </summary>
    [Table("S_ELEMENT_WORK")]
    public class ElementWork : IRedactModel
    {
        /// <summary>
        /// Идентификатор
        /// </summary>
        [Column("ELEMENT_WORK_ID")]
        public int ElementWorkId { get; set; }

        /// <summary>
        /// Идентификатор элемента
        /// </summary>
        [Column("ELEMENT_ID")]
        public int ElementId { get; set; }
        public virtual Element Element { get; set; }

        /// <summary>
        /// Идентификатор работы
        /// </summary>
        [Column("WORK_ID")]
        public int WorkId { get; set; }
        public virtual Work Work { get; set; }

        /// <summary>
        /// Дата создания
        /// </summary>
        [Column("DATE_CREATE")]
        public DateTime DateCreate { get; set; }

        /// <summary>
        /// Дата редактирования
        /// </summary>
        [Column("DATE_UPDATE")]
        public DateTime DateUpdate { get; set; }

        [NotMapped]
        public string Name
        {
            get
            {
                return this.Work.Name;
            }
        }
        [NotMapped]
        public int? UnitId
        {
            get
            {
                return this.Work.UnitId;
            }
        }
        [NotMapped]
        public string Code
        {
            get
            {
                return this.Work.Code;
            }
        }
    }
}
